let curPage = 1;
let pageSize = 10;
layui.use(['laydate','form','laypage', 'layer'], function(){
    let laydate = layui.laydate;
    let  form = layui.form;
    page()

    // // 监听全选
    // form.on('checkbox(checkall)', function(data){
    //
    //     if(data.elem.checked){
    //         $('tbody input').prop('checked',true);
    //     }else{
    //         $('tbody input').prop('checked',false);
    //     }
    //     form.render('checkbox');
    // });

    //执行一个laydate实例
    laydate.render({
        elem: '#start' //指定元素
    });

    //执行一个laydate实例
    laydate.render({
        elem: '#end' //指定元素
    });


    //监听提交
    form.on('submit(search)',
        function () {
            console.log(getSearchData())
            page();
            return false;
        });
});

// /*用户-停用*/
// function member_stop(obj,id){
//     let status = $(obj).attr('title')=='启用'?'停用':'启用';
//
//     layer.confirm('确认要'+ status +'吗？',function(index){
//
//         $.ajax({
//             url: '/back/user/enable',
//             data: {id: id},
//             type: 'post',
//             dataType: 'json',
//             success: function (data) {
//                 if (data.result == 'success') {
//                     if ($(obj).attr('title') == '启用') {
//
//                         //发异步把用户状态进行更改
//                         $(obj).attr('title', '停用')
//                         $(obj).find('i').html('&#xe62f;');
//
//                         $(obj).parents("tr").find(".td-status").find('span').addClass('layui-btn-disabled').html('已停用');
//                         layer.msg('已停用!', {icon: 5, time: 1000});
//
//                     } else {
//                         $(obj).attr('title', '启用')
//                         $(obj).find('i').html('&#xe601;');
//
//                         $(obj).parents("tr").find(".td-status").find('span').removeClass('layui-btn-disabled').html('已启用');
//                         layer.msg('已启用!', {icon: 5, time: 1000});
//                     }
//                 }
//             }
//         });
//     });
// }

/*用户-删除*/
function member_del(obj,id){
    layer.confirm('确认要删除吗？',function(index){
        //发异步删除数据
        $.ajax({
            url: 'http://localhost:11111/back/product/delete',
            data: {id: id},
            type: 'post',
            dataType: 'json',
            beforeSend: function(xhr) {
                let token = window.localStorage.getItem('token');
                xhr.setRequestHeader("Authorization", token);
            },
            success: function (data) {
                console.log(data);
                if (data.code === 0) {
                    $(obj).parents("tr").remove();
                    layer.msg('已删除!',{icon:1,time:1000});
                    window.location.reload();
                }
            }
        });
    });
}



// function delAll (argument) {
//     var ids = [];
//
//     // 获取选中的id
//     $('tbody input').each(function(index, el) {
//         if($(this).prop('checked')){
//             ids.push($(this).val())
//         }
//     });
//
//     layer.confirm('确认要删除吗？'+ids.toString(),function(index){
//         //捉到所有被选中的，发异步进行删除
//         layer.msg('删除成功', {icon: 1});
//         $(".layui-form-checked").not('.header').parents('tr').remove();
//     });
// }

function getSearchData() {
    return {
        name: $("#name").val(),
        start: $("#start").val(),
        end: $("#end").val(),
        type: $("#type").val(),
        price: $("#price").val(),
        enable: $("#status").val()
    };
}

function getCount(json) {
    let count = 0;
    $.ajax({
        url: 'http://localhost:11111/back/product/count',//地址：访问后台的地址
        data: { val : JSON.stringify(getSearchData(json))},//前端传递给后台的数据
        type: 'get',
        async: false,
        dataType: 'json',//是后端传递到前端的数据格式
        xhrFields:{
            withCredentials:true
        },
        beforeSend: function(xhr) {
            let token = window.localStorage.getItem('token');
            xhr.setRequestHeader("Authorization", token);
        },
        success: function (data) {//后端给前端的一个反馈
            count = data;
        }
    });
    return count;
}

function setList(data)  {
    let html="";
    for (let i = 0; i < data.length; i++) {
        html += '<tr>\n' +
            '                            <td>' + data[i].id + '</td>\n' +
            '                            <td>' + data[i].productName + '</td>\n' +
            '                            <td>' + setUndefinedToNull(data[i].productType) + '</td>\n' +
            '                            <td><img src="' + setUndefinedToNull(data[i].img) + '" width="50px" height="50px"/> </td>\n' +
            '                            <td>' + setUndefinedToNull(data[i].price) + '</td>\n' +
            '                            <td>' + setUndefinedToNull(data[i].normalPrice) + '</td>\n' +
            '                            <td class="td-status">\n' +
            '                                <span class="layui-btn '+ (data[i].enable>0?"layui-btn-normal":"layui-btn-disabled") +' layui-btn-mini ">'+ judgeStatus(data[i].enable) + '</span></td>\n' +
            '                            <td class="td-manage">\n' +
            '                                <a title="编辑状态" onclick="editStatus(' + data[i].id + ')" href="javascript:;"\n' +
            '                                   href="javascript:;">\n' +
            '                                    <i class="layui-icon">&#xe601;</i>\n' +
            '                                </a>\n' +
            '                                <a title="编辑" onclick="edit(' + data[i].id + ')" href="javascript:;"\n' +
            '                                   href="javascript:;">\n' +
            '                                    <i class="layui-icon">&#xe642;</i>\n' +
            '                                </a>\n' +
            '                                <a title="删除" onclick="member_del(this,' + data[i].id + ')" href="javascript:;">\n' +
            '                                    <i class="layui-icon">&#xe640;</i>\n' +
            '                                </a>\n' +
            '                            </td>\n' +
            '                        </tr>';

    }
    $("#tbody").html(html);
}

function findAll(obj) {
    curPage = obj.curr;
    pageSize = obj.limit;
    // let data = myAjax('http://localhost:8081/back/product/findAll', {startPage: (curPage-1)*pageSize,
    //     pageSize: pageSize, val : JSON.stringify(getSearchData())}, 'get');
    let login = {loginName: sessionStorage.getItem("loginName")};
    // let jsonData = {startPage: (curPage-1)*pageSize,
    //     pageSize: pageSize, val : JSON.stringify(getSearchData())}
    let jsonData = {startPage: curPage-1,
        pageSize: pageSize, val : JSON.stringify(getSearchData())}
    $.ajax({
        url: 'http://localhost:11111/back/product/findAll',//地址：访问后台的地址
        data:  Object.assign(jsonData, login),//前端传递给后台的数据
        type: 'get',
        async: false,
        dataType: 'json',
        xhrFields:{
            withCredentials:true
        },
        beforeSend: function(xhr) {
            let token = localStorage.getItem("token")
            xhr.setRequestHeader("Authorization", token);
        },
        success: function (ev) {//后端给前端的一个反馈
            if (sessionStorage.getItem("loginName") == null || ev.code === 4) {
                location.href = '/login.html'
                return false
            }
            // result=ev
            // let jsonStr = JSON.stringify(ev.data)
            // let isonObj = JSON.parse(jsonStr)
            // console.log("产品查询----->"+JSON.stringify(ev.data))
            if(ev.code !== 0){
                layer.msg(ev.message, {icon: 2, time: 1000});
                return false
            }
            setList(ev.data.list);
        }
    });
    // setList(data.data);
}

function page(){
    layui.use(['laydate','form','laypage', 'layer'], function(){
        let laypage = layui.laypage
            ,layer = layui.layer;
        laypage.render({
            contentType:"application/json;charset=utf-8"
            ,elem: 'page'
            ,count: getCount(getSearchData())
            ,layout: ['count', 'prev', 'page', 'next', 'limit', 'refresh', 'skip']
            ,jump: function(obj){
                findAll(obj);
            }
        });
    })
}


function judgeStatus(data){
    let status="";
    if(data==3){
        status="置顶";
    }
    if(data==2){
        status="推荐";
    }
    if(data==1){
        status="普通";
    }
    if(data==0){
        status="停用";
    }
    return status;
}

function setUndefinedToNull(data) {
    return data == undefined ? "" : data;
}

function edit(id) {
    let data = myAjax('http://localhost:11111/back/product/goEdit',{id:id},'get')
    if(data.code !== 0){
        alert(data.msg)
    }
    sessionStorage.setItem("data", JSON.stringify(data.data));
    xadmin.open('编辑','product-edit.html',750,400);
}

function editStatus(id) {
    sessionStorage.setItem("currentId",id);
    xadmin.open('编辑','product-editStatus.html',600,200);
}
